1. Field of the Invention
Embodiments of the present invention relate to decoding compressed video information.
2. Related Art
A common approach to video compression schemes involves tracking the changes between one frame of video and the next. Rather than storing separate, complete images for every frame of video, most video compression standards involve providing one or more reference frames, and building the majority of frames by noting how these reference frames change.
For example, in some of the more popular video compression standards, a single complete image is encoded at the beginning of a sequence; such a complete image is described as an intra frame (I frame). This I frame provides the reference for one or more predicted frames (P frames), which rely upon a previously decoded frame (either the I frame, or an earlier P frame). The majority of the encoded video will be made up of bi-predictive frames (B frames), which rely upon several previously decoded reference frames (the I frame, or P frames).
The exact usage of the reference frames varies, across different video encoding schemes. For example, under an MPEG-2 encoding scheme, only the two most recent reference frames may be used as reference frames; under the H.264 encoding scheme, however, reference frames may be needed for a much longer period of time, and so need to be retained.
Decoding compressed video, at present, is a platform specific task. The decoder used, for example, to play back a video on a computer is frequently written in a way that locks it to the platform for which it was written, e.g., specific memory handling tasks are built into the decoder. Accordingly, developing a decoder for a different platform, e.g., a portable media playback device, generally involves rewriting the decoder entirely.